package 基础练习;/**
 * @author： li
 * @date： 2022-01-22 13:31
 * @version 1.0
 */

/*问题描述
　　FJ在沙盘上写了这样一些字符串：
　　A1 = “A”
　　A2 = “ABA”
　　A3 = “ABACABA”
　　A4 = “ABACABADABACABA”
　　… …
　　你能找出其中的规律并写所有的数列AN吗？
输入格式
　　仅有一个数：N ≤ 26。
输出格式
　　请输出相应的字符串AN，以一个换行符结束。输出中不得含有多余的空格或换行、回车符。
样例输入
3
样例输出
ABACABA
 */
import java.util.Scanner;
public class FJ的字符串 {
    //最开始想法  字符串一分两半
    // 从一号字符开始 加到n号字符  后面一半不是对称关系 可以直接用substring剪切掉前一半的最后一个字符 再输出一边

    //后来思考比较合适的规律，因该是
    // a2 = a1+"A+1"+a1    a3 = a2+"A+2"+a2  用递归
    public static void main(String[] args) {
        int n = new Scanner(System.in).nextInt();
        System.out.println(func(n-1));
    }
    static String  func(int n ){
        if (n==0){
            return "A";
        }else{
            return func(n-1)+(char)('A'+n)+func(n-1);
        }
    }
}

